This invention relates to the field of network analysis systems, and in particular to a system that facilitates a comparison of networks and provides a variety of reports regarding differences found.
Because of the demands placed upon typical networks, changes are often and continually made; equipment is added or removed, attributes associated with the equipment are adjusted, connections are rerouted, and so on. Ideally, each change is recorded and reported to the network manager, so that if a problem develops on the network, the manager can assess the changes that have been introduced, to identify potential causes. However, this ideal is rarely achieved, and when network problems develop, the typical network manager does not have a complete and/or up-to-date list, and must painstakingly generate one manually.
Also, network managers often use simulation tools to simulate the effect of proposed changes to the network, before the changes are actually made. Even in these cases, however, the complexity of a typical network is such that minor changes may be continually made and unmade throughout the network representation in such a way that it is not easy to build a final list of migration steps or to diagnose problems in the virtual network.
Conventionally, when a network is installed, a ‘baseline’ network description is created. This represents a stable point for the network. Whenever major changes are introduced, either in the simulated network or in the actual network, a new baseline is made. In some environments, daily or weekly baselines are also kept. When a network problem develops, the network manager compares the latest network description to the appropriate baseline to identify changes since the last known stable point.
A network description typically comprises one or more computer files that can be provided in text-form. An example network description file, in XML format, is illustrated in FIG. 1.
As a first step in a typical diagnostic process, the current and baseline versions of the network description file are compared side-by-side, highlighting any changes. However, the network description file for even a relatively small network may include hundreds of pages. Conventional text-based “file-compare” programs are often used to facilitate such comparing and highlighting of changes. The diagnostician can then review these highlighted ‘differences’ to identify the potential cause(s) of the problem. The comparison of network descriptions using conventional text-based comparison techniques, however, is often a time-consuming and frustrating process, particularly if the change involves replacing a piece of equipment or modifying connectivity. Even without an equipment or connectivity change, a text-based comparison is cumbersome, because minor parametric changes are highlighted in the same manner as major parametric changes, often obscuring significant changes among a plethora of cosmetic or incidental changes. Additionally, such text-based comparisons do not provide the organization that provides for fast and easy understanding of the differences.
In the example network description of FIG. 1, for example, some of the information in the description, such as the “x” and “y” position attributes 101, and the “color” attribute 102 are provided to facilitate a display of the network on a color graphic display device, and other attributes, such as the “text” attributes 103 are provided to simply annotate the network description. Changes to these attributes 101-103 will not have an effect on the operation of the network, yet a text-based comparison will highlight these changes in the same manner that it highlights changes to attributes that can have an effect on the operation of the network, such as a change to a router's IP address 111.
Similarly, a highlighted change to a router's IP address 111 in a text-based comparison does not immediately convey useful information, because the line in the description that identifies the object (“router4”) 110 to which this address 111 applies may be dozens of lines away from this highlighted address 111, and the object 110 will not be highlighted as being changed, because the line that defines the object 110 in the text file of each description will be identical.
In like manner, the need to view the hundreds of pages of the network description with highlighted changes cannot be avoided by having the text-based comparator only display the lines that have changed, because a display of a highlighted change, such as a change to the address 111, is meaningless if presented outside the context of being within the description of the object 110. That is, the diagnostician needs to know that the address change at 111 applies to “router4”, which is identified at 110.
It is an object of this invention to provide a network difference system that locates and focuses on the relevant differences between two network descriptions. It is a further object of this invention to provide a method for reporting network differences, in one or more presentation styles, that facilitate rapid understanding of the identified differences.
These objects and others are achieved by a system that locates corresponding pieces of equipment in each network description, ignoring those that are explicitly identified as being “uninteresting”, and compares all attributes, except those explicitly identified as uninteresting, hierarchically. A user-interface is provided to allow a user to explicitly identify objects or attributes that are uninteresting for the purposes of the comparison process. Once these correspondences and comparisons are made, the network objects are categorized into one of four groups: objects found in both networks that have differing attributes; objects found in both network that have no differences; objects found only in the baseline network, that is, objects that have been deleted from the network; and objects found only in the current network, that is, objects that have been added to the network. Within the category of objects in both networks that have differences, the individual attribute differences are listed within the original hierarchy of the attributes, so that there is enough context for the user of the report to understand which area has been affected.
Throughout the drawings, the same reference numerals indicate similar or corresponding features or functions. The drawings are included for illustrative purposes and are not intended to limit the scope of the invention.